Multiplicidad

La multiplicidad en UML especifica el número mínimo y máximo de instancias de un elemento que pueden participar en una relación con otro elemento (OMG, 2017, sección 7.5.3).

Notación

La multiplicidad se representa como un intervalo de valores enteros no negativos:

Formato Ejemplos
mínimo..máximo - 0..1: Cero o una instancia.
- 1..*: Una o más instancias.
- *: Equivalente a 0..* (cero o más).
- 3: Exactamente tres instancias.

Aplicaciones de la Multiplicidad

La multiplicidad se utiliza en tres contextos principales:

1. Asociaciones

Define cuántas instancias de una clase (clasificador) pueden vincularse con instancias de otra.

Figura
Multiplicidad en Asociaciones entre Clasificadores

uml diagram

Nota: Esto se interpreta como:

2. Atributos

Especifica cuantos valores puede tener un atributo

Figura
Multiplicidad en Atributos

uml diagram

Nota: Esto se interpreta como:

2. Parámetros

Indica cuantos argumentos puede recibir un parámetro en una operación

Figura
Multiplicidad en Parámetros

uml diagram

Nota: Esto se interpreta como:

Casos Especiales

Multiplicidad Descripción Ejemplo de Uso
0..1 Opcional: Cero o una instancia. Un empleado puede tener 0 o 1 jefe.
1 Obligatorio: Exactamente una instancia. Una orden debe tener un cliente.
* Ilimitado: Cero o más instancias. Un blog puede tener muchos posts.
2..4 Rango específico: Entre dos y cuatro instancias. Un equipo de fútbol tiene 11 jugadores.

Buenas Prácticas

Algunas recomendaciones:

Buena Práctica
Evitar Redundancia No usar 1..1; en su lugar, usar 1.
Consistencia con el Dominio Asegurar que las multiplicidades reflejen reglas del negocio (ejemplo: una reserva debe tener un cliente).
Restricciones Adicionales Usar notas para aclarar restricciones complejas (ejemplo: "Solo una instancia activa al mismo tiempo").